import pandas as pd

print('\n___\nDataFrame-1:\n')
dataframe_1=pd.DataFrame([[3000,'User_1','Coffee'],[3001,'User_2','Tea'],[3002,'User_3','Cola'],[3003,'User_4','Fanta']],columns=['Number','Name','Drink'])
dataframe_1=dataframe_1.set_index('Number')
print(dataframe_1)

print('\n___\nDataFrame-2:\n')
dataframe_2=pd.DataFrame([[3000,'Frontend'],[3001,'Developer'],[3002,'Cyber-Security'],[3003,'Backend'],[3004,'Frontend'],[3005,'Data Science']],columns=['Number','Job'])
dataframe_2=dataframe_2.set_index('Number')
print(dataframe_2)

# тут мы объединили датафреймы 1 и 2 так, чтобы в объединении содержались только те строки, которые имеют совпадения в dataframe-1
print('\n___\ndf1.join(df2):\n')
df_join=dataframe_1.join(dataframe_2)
print(df_join)

# тут мы добавим строку в dataframe-1
print('\n___')
print('Строка, которую добавляем:\n')
df_add=pd.DataFrame([[3006,'Data Science']],columns=['Number','Job'])
df_add=df_add.set_index('Number')
print(df_add)
print('\n\nРезультат:\n')
dataframe_2=dataframe_2._append(df_add)
print(dataframe_2)

# теперь нам надо объединить dataframe-1 и dataframe-2, но так, чтобы итоговый датафрейм включал в себя все строки из обоих датафреймов
print('\n___\n')
dataframe_all=dataframe_1.join(dataframe_2,how="outer")
print(dataframe_all)